Спецификация устройств, на специальном ЯП под названием Жар-Птица Лирохвост.
В языке есть "монада" преобразования состояния, есть чистые функции, есть типы с размерностью.
Ровно то, что мы сделали для описания процессорных ядер, только в нашем случае это был Haskell.